babl-fish-path: permit searching for one step longer fish paths
authorØyvind Kolås <pippin@gimp.org>
Thu, 15 Dec 2016 16:39:50 +0000 (17:39 +0100)
committerØyvind Kolås <pippin@gimp.org>
Thu, 15 Dec 2016 16:39:52 +0000 (17:39 +0100)
but only if no BABL_PATH_LENGTH long or shorter valid paths were found,
this enables some desirable 16bit integer and floating point conversions.

babl/babl-fish-path.c

index 7e1504c64542c8c3c8d2e8b791df7dffab3b2a64..4f169d0b51424283fb1487b120bccbea32c65091 100644 (file)
@@ -333,6 +333,11 @@ babl_fish_path (const Babl *source,
 
     get_conversion_path (&pc, (Babl *) source, 0, max_path_length ());
 
+    /* second attempt,. at path length + 1*/
+    if (babl->fish_path.conversion_list->count == 0 &&
+        max_path_length () + 1 <= BABL_HARD_MAX_PATH_LENGTH)
+      get_conversion_path (&pc, (Babl *) source, 0, max_path_length () + 1);
+
     babl_in_fish_path--;
     babl_free (pc.current_path);
   }